141C - Queue - CodeForces Solution


constructive algorithms greedy sortings *1800

Please click on ads to support us..

C++ Code:

#include<bits/stdc++.h>
using namespace std;
using I=int;
using S=string;
const I N=3000;
pair<I,S>ppls[N];
vector<I>inds;
I ress[N];
I main(){
  cin.tie(0)->sync_with_stdio(0);
  I n;cin>>n;
  for(I i=0;i<n;i++){
    S nam;I a;cin>>nam>>a;
    ppls[i]={a,nam};
  }
  sort(ppls,ppls+n);
  for(I i=0;i<n;i++){
    auto[a,nam]=ppls[i];
    if(a>i)printf("-1"),exit(0);
    inds.insert(inds.begin()+a,i);
  }
  for(I i=n-1;i>=0;i--)ress[inds[i]]=n-i;
  for(I i=0;i<n;i++){
    auto[a,nam]=ppls[i];
    printf("%s %i\n",nam.c_str(),ress[i]);
  }
}


Comments

Submit
0 Comments
More Questions

1279A - New Year Garland
1279B - Verse For Santa
202A - LLPS
978A - Remove Duplicates
1304A - Two Rabbits
225A - Dice Tower
1660D - Maximum Product Strikes Back
1513A - Array and Peaks
1251B - Binary Palindromes
768B - Code For 1
363B - Fence
991B - Getting an A
246A - Buggy Sorting
884A - Book Reading
1180A - Alex and a Rhombus
445A - DZY Loves Chessboard
1372A - Omkar and Completion
159D - Palindrome pairs
981B - Businessmen Problems
1668A - Direction Change
1667B - Optimal Partition
1668B - Social Distance
88B - Keyboard
580B - Kefa and Company
960A - Check the string
1220A - Cards
897A - Scarborough Fair
1433B - Yet Another Bookshelf
1283B - Candies Division
1451B - Non-Substring Subsequence